#pragma once
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>

typedef int LTDataType;
typedef struct ListNode
{
	LTDataType data;
	struct ListNode* prev;
	struct ListNode* next;
}LTN;

LTN* LTInit();
//void LTInit(LTN** pphead);
void LTPrint(LTN* phead);
void LTDestroy(LTN* phead);
//bool LTEmpty(LTN* phead);


void LTPushBack(LTN* phead, LTDataType x);
void LTPushFront(LTN* phead);

void LTPushFront(LTN* phead, LTDataType x);
void LTPopFront(LTN* phead);

void LTInsert(LTN* pos, LTDataType x);
void LTPopFront(LTN* phead);

void LTInsert(LTN* pos, LTDataType x);
void LTErase(LTN* pos);
LTN* LTFind(LTN* phead, LTDataType x);
